<?xml version="1.0" encoding="utf-8"?>
<resources>
    <!-- Whether the display blanks itself when transition from a doze to a non-doze state -->
    <bool name="config_displayBlanksAfterDoze">false</bool>

    <!-- Power Management: Specifies whether to decouple the auto-suspend state of the
         device from the display on/off state.
         When false, autosuspend_disable() will be called before the display is turned on
         and autosuspend_enable() will be called after the display is turned off.
         This mode provides best compatibility for devices using legacy power management
         features such as early suspend / late resume.
         When true, autosuspend_display() and autosuspend_enable() will be called
         independently of whether the display is being turned on or off.  This mode
         enables the power manager to suspend the application processor while the
         display is on.
         This resource should be set to "true" when a doze component has been specified
         to maximize power savings but not all devices support it.
         Refer to autosuspend.h for details.
    -->
    <bool name="config_powerDecoupleAutoSuspendModeFromDisplay">true</bool>

    <!-- Stability requirements in milliseconds for accepting a new brightness level.  This is used
         for debouncing the light sensor.  Different constants are used to debounce the light sensor
         when adapting to brighter or darker environments.  This parameter controls how quickly
         brightness changes occur in response to an observed change in light level that exceeds the
         hysteresis threshold. -->
    <integer name="config_autoBrightnessBrighteningLightDebounce">1000</integer>
    <integer name="config_autoBrightnessDarkeningLightDebounce">1000</integer>

    <!-- Fast brightness animation ramp rate in brightness units per second-->
    <integer name="config_brightness_ramp_rate_fast">2466</integer>

    <!-- Slow brightness animation ramp rate in brightness units per second-->
    <integer name="config_brightness_ramp_rate_slow">1973</integer>

    <!-- The default peak refresh rate. -->
    <integer name="config_defaultPeakRefreshRate">90</integer>

    <!-- Screen brightness used to dim the screen when the user activity
         timeout expires.  May be less than the minimum allowed brightness setting
         that can be set by the user. -->
    <integer name="config_screenBrightnessDim">20</integer>

    <!-- Default screen brightness setting.
         Must be in the range specified by minimum and maximum. -->
    <integer name="config_screenBrightnessSettingDefault">307</integer>

    <!-- Maximum screen brightness setting allowed by the power manager.
         The user is forbidden from setting the brightness above this level. -->
    <integer name="config_screenBrightnessSettingMaximum">2047</integer>

    <!-- Minimum screen brightness setting allowed by the power manager.
         The user is forbidden from setting the brightness below this level. -->
    <integer name="config_screenBrightnessSettingMinimum">8</integer>

    <!-- Array of hysteresis constraint values for brightening, represented as tenths of a
         percent. The length of this array is assumed to be one greater than
         config_ambientThresholdLevels. The brightening threshold is calculated as
         lux * (1.0f + CONSTRAINT_VALUE). When the current lux is higher than this threshold,
         the screen brightness is recalculated. See the config_ambientThresholdLevels
         description for how the constraint value is chosen. -->
    <integer-array name="config_ambientBrighteningThresholds">
        <item>2</item>
        <item>5</item>
        <item>10</item>
        <item>30</item>
        <item>100</item>
        <item>400</item>
        <item>600</item>
        <item>1000</item>
    </integer-array>

    <!-- Array of hysteresis constraint values for darkening, represented as tenths of a
         percent. The length of this array is assumed to be one greater than
         config_ambientThresholdLevels. The darkening threshold is calculated as
         lux * (1.0f - CONSTRAINT_VALUE). When the current lux is lower than this threshold,
         the screen brightness is recalculated. See the config_ambientThresholdLevels
         description for how the constraint value is chosen. -->
    <integer-array name="config_ambientDarkeningThresholds">
        <item>800</item>
        <item>800</item>
        <item>500</item>
        <item>500</item>
        <item>500</item>
        <item>500</item>
        <item>500</item>
        <item>500</item>
    </integer-array>

    <!-- Array of ambient lux threshold values. This is used for determining hysteresis constraint
         values by calculating the index to use for lookup and then setting the constraint value
         to the corresponding value of the array. The new brightening hysteresis constraint value
         is the n-th element of config_ambientBrighteningThresholds, and the new darkening
         hysteresis constraint value is the n-th element of config_ambientDarkeningThresholds.
         The (zero-based) index is calculated as follows: (MAX is the largest index of the array)
         condition                       calculated index
         value < level[0]                0
         level[n] <= value < level[n+1]  n+1
         level[MAX] <= value             MAX+1 -->
    <integer-array name="config_ambientThresholdLevels">
        <item>2</item>
        <item>10</item>
        <item>30</item>
        <item>100</item>
        <item>800</item>
        <item>2000</item>
        <item>4000</item>
    </integer-array>

    <!-- Array of desired screen brightness in nits corresponding to the lux values
         in the config_autoBrightnessLevels array. As with config_screenBrightnessMinimumNits and
         config_screenBrightnessMaximumNits, the display brightness is defined as the measured
         brightness of an all-white image.
         If this is defined then:
            - config_autoBrightnessLcdBacklightValues should not be defined
            - config_screenBrightnessNits must be defined
            - config_screenBrightnessBacklight must be defined
         This array should have size one greater than the size of the config_autoBrightnessLevels
         array. The brightness values must be non-negative and non-decreasing. This must be
         overridden in platform specific overlays -->
    <integer-array name="config_autoBrightnessDisplayValuesNits">
        <item>3</item>
        <item>4</item>
        <item>6</item>
        <item>15</item>
        <item>21</item>
        <item>27</item>
        <item>36</item>
        <item>52</item>
        <item>71</item>
        <item>87</item>
        <item>97</item>
        <item>98</item>
        <item>98</item>
        <item>98</item>
        <item>99</item>
        <item>99</item>
        <item>100</item>
        <item>100</item>
        <item>100</item>
        <item>101</item>
        <item>101</item>
        <item>102</item>
        <item>103</item>
        <item>103</item>
        <item>103</item>
        <item>106</item>
        <item>108</item>
        <item>110</item>
        <item>112</item>
        <item>114</item>
        <item>116</item>
        <item>118</item>
        <item>119</item>
        <item>122</item>
        <item>123</item>
        <item>125</item>
        <item>128</item>
        <item>130</item>
        <item>131</item>
        <item>134</item>
        <item>136</item>
        <item>137</item>
        <item>140</item>
        <item>142</item>
        <item>144</item>
        <item>169</item>
        <item>196</item>
        <item>222</item>
        <item>248</item>
        <item>270</item>
        <item>300</item>
        <item>320</item>
        <item>335</item>
        <item>400</item>
        <item>416</item>
        <item>433</item>
        <item>450</item>
        <item>466</item>
        <item>483</item>
        <item>500</item>
    </integer-array>

    <!-- Array of output values for LCD backlight corresponding to the LUX values
         in the config_autoBrightnessLevels array.  This array should have size one greater
         than the size of the config_autoBrightnessLevels array.
         This must be overridden in platform specific overlays -->
    <integer-array name="config_autoBrightnessLcdBacklightValues">
        <item>18</item>
        <item>25</item>
        <item>31</item>
        <item>77</item>
        <item>107</item>
        <item>138</item>
        <item>184</item>
        <item>266</item>
        <item>363</item>
        <item>445</item>
        <item>496</item>
        <item>501</item>
        <item>501</item>
        <item>501</item>
        <item>507</item>
        <item>507</item>
        <item>512</item>
        <item>512</item>
        <item>512</item>
        <item>517</item>
        <item>517</item>
        <item>522</item>
        <item>527</item>
        <item>527</item>
        <item>527</item>
        <item>542</item>
        <item>553</item>
        <item>563</item>
        <item>573</item>
        <item>583</item>
        <item>594</item>
        <item>604</item>
        <item>609</item>
        <item>624</item>
        <item>629</item>
        <item>640</item>
        <item>655</item>
        <item>665</item>
        <item>670</item>
        <item>686</item>
        <item>696</item>
        <item>701</item>
        <item>716</item>
        <item>727</item>
        <item>737</item>
        <item>865</item>
        <item>1003</item>
        <item>1136</item>
        <item>1269</item>
        <item>1382</item>
        <item>1535</item>
        <item>1638</item>
        <item>1714</item>
        <item>2047</item>
        <item>2047</item>
        <item>2047</item>
        <item>2047</item>
        <item>2047</item>
        <item>2047</item>
        <item>2047</item>
    </integer-array>

    <!-- Array of light sensor LUX values to define our levels for auto backlight brightness support.
         The N entries of this array define N  1 zones as follows:

         Zone 0:        0 <= LUX < array[0]
         Zone 1:        array[0] <= LUX < array[1]
         ...
         Zone N:        array[N - 1] <= LUX < array[N]
         Zone N + 1     array[N] <= LUX < infinity

         Must be overridden in platform specific overlays -->
    <integer-array name="config_autoBrightnessLevels">
        <item>1</item>
        <item>2</item>
        <item>4</item>
        <item>6</item>
        <item>8</item>
        <item>10</item>
        <item>15</item>
        <item>20</item>
        <item>25</item>
        <item>30</item>
        <item>35</item>
        <item>40</item>
        <item>45</item>
        <item>50</item>
        <item>55</item>
        <item>60</item>
        <item>65</item>
        <item>70</item>
        <item>75</item>
        <item>80</item>
        <item>85</item>
        <item>90</item>
        <item>95</item>
        <item>100</item>
        <item>120</item>
        <item>140</item>
        <item>160</item>
        <item>180</item>
        <item>200</item>
        <item>220</item>
        <item>240</item>
        <item>260</item>
        <item>280</item>
        <item>300</item>
        <item>320</item>
        <item>340</item>
        <item>360</item>
        <item>380</item>
        <item>400</item>
        <item>420</item>
        <item>440</item>
        <item>460</item>
        <item>480</item>
        <item>500</item>
        <item>700</item>
        <item>900</item>
        <item>1100</item>
        <item>1300</item>
        <item>1500</item>
        <item>1700</item>
        <item>1900</item>
        <item>2000</item>
        <item>2500</item>
        <item>3000</item>
        <item>3500</item>
        <item>4000</item>
        <item>4500</item>
        <item>5000</item>
        <item>5500</item>
    </integer-array>

    <!-- Vibrator pattern for feedback about a long screen/key press -->
    <integer-array name="config_longPressVibePattern">
        <item>0</item>
        <item>1</item>
        <item>75</item>
        <item>76</item>
    </integer-array>

   <!-- Vibrator pattern for feedback about touching a virtual key -->
    <integer-array name="config_virtualKeyVibePattern">
        <item>0</item>
        <item>30</item>
        <item>45</item>
        <item>53</item>
    </integer-array>

    <!-- Array of hysteresis constraint values for brightening, represented as tenths of a
         percent. The length of this array is assumed to be one greater than
         config_screenThresholdLevels. The brightening threshold is calculated as
         screenBrightness * (1.0f + CONSTRAINT_VALUE). When the new screen brightness is higher
         than this threshold, it is applied. See the config_screenThresholdLevels description for
         how the constraint value is chosen. -->
    <integer-array name="config_screenBrighteningThresholds">
        <item>0</item>
    </integer-array>

    <!-- Array of hysteresis constraint values for darkening, represented as tenths of a
         percent. The length of this array is assumed to be one greater than
         config_screenThresholdLevels. The darkening threshold is calculated as
         screenBrightness * (1.0f - CONSTRAINT_VALUE). When the new screen brightness is lower than
         this threshold, it is applied. See the config_screenThresholdLevels description for how
         the constraint value is chosen. -->
    <integer-array name="config_screenDarkeningThresholds">
        <item>0</item>
    </integer-array>

    <!-- Indicate available ColorDisplayManager.COLOR_MODE_xxx. -->
    <integer-array name="config_availableColorModes">
       <item>0</item> <!-- COLOR_MODE_NATURAL -->
       <item>1</item> <!-- COLOR_MODE_BOOSTED -->
       <item>3</item> <!-- COLOR_MODE_AUTOMATIC -->
    </integer-array>
</resources>
